-- @owner: lihongji
-- @date: 2022/6/20
-- @testpoint:concat_ws多少参数，入参一个参数合理报错


--step1: 建表     expect:成功
drop table if exists t_ustore_concat_ws_0048;
create table t_ustore_concat_ws_0048(
col_1 bigint, col_2 timestamp without time zone, col_3 bool,col_4 decimal,col_5 text ,col_6 smallint ,col_7 char(30),col_8 double precision,col_9 text,col_10 character varying(30),
col_11 bool ,col_12 bytea ,col_13 real ,col_14 numeric ,col_15 blob ,col_16 integer ,col_17 int ,col_18 timestamp with time zone ,col_19 binary_integer ,col_20 interval day to second ,
col_21 boolean, col_22 nchar(30) ,col_23 bigint ,col_24 nchar(100) ,col_25 character(1000) , col_26 text , col_27 float ,col_28 double precision ,col_29 bigint ,col_30  timestamp with time zone ,
col_31 timestamp , col_32 clob ,col_33 interval year to month, col_34 character(30) ,col_35 smallint ,col_36 blob ,col_37 char(300),col_38 float ,col_39 raw(100),col_40 clob ,
col_41 binary_double ,col_42 number(6,2) ,col_43 decimal(6,2) ,col_44 varchar2(50),col_45 varchar(30) ,col_46 nvarchar2(100), col_47 numeric(12,6),col_48 varchar2(50),col_49 date,col_50 clob ,
col_51 integer ,col_52 binary_double ,col_53 decimal(12,6),col_54 raw(8000),col_55 clob ,col_56 varchar2(8000) ,col_57 date ,col_58 number(12,6),col_59 nvarchar2(4000) ,col_60 clob ,
col_61 blob ,col_62 date ,col_63 blob , col_64 varchar(1000),col_65 date
) with (storage_type=ustore);

--step2: 创建序列   expect: 成功
drop sequence if exists s_seq_get_tab_sin;
create sequence s_seq_get_tab_sin increment by 1 start with 100000;

--step3: 清空数据   expect: 成功
truncate table t_ustore_concat_ws_0048;

--step4: 插入数据   expect: 成功
begin
 for i in 1..1000 loop
      insert into t_ustore_concat_ws_0048 values(
s_seq_get_tab_sin.nextval,to_timestamp('2019-01-03 14:58:54.000000','yyyy-mm-dd hh24:mi:ss.ffffff'),true,3.1415926,lpad('abc','30','a@123&^%djgk'),987,'asjk&%$454',10011.456789445455,lpad('abc','50','a@123&^%djgk'),'字符串',
false,'1001011',315454.1415926,99/4,'101101000111111101010',0,1,to_timestamp('2019-01-04 16:33:47.123456','yyyy-mm-dd hh24:mi:ss.ffffff'),'1',(interval '4 5:12:10.222' day to second(3)),
0,rpad('abc','10','e'),353848,rpad('abc','10','exc'),lpad('abc','30','a@123&^%djgk'),lpad('abc','20','a@123&^%djgk'),9745.548,-99,3141.5,to_timestamp('2019-01-04 16:33:47.123456','yyyy-mm-dd hh24:mi:ss.ffffff'),
to_timestamp('2019-01-03 14:58:54.000000','yyyy-mm-dd hh24:mi:ss.ffffff'),'a@123&^%djgk',(interval '12' year),' ','0','101101000111111101010','这是一个字符串',1/2.15,'0faadb9','a@123&^%djgk',
1.0e+100,3.14,4445.25,rpad('abc','10','&'),lpad('abc','10','&'),'abc&gdsh',125563.141592,rpad('abc','10','e'),'2019-01-03 14:14:12','a@123汉字&^%djgk',
+2,-1.79e+100,98*0.99,'1010101001010','abca@123&^%djgk','abca@123&^%djgk','2019-01-03 14:14:12',25563.1415,'a字符串@123&^%djgk',lpad('10',20,'01010'),
'1001010','2019-01-03 14:14:12','010101111111100000000000000','abc&gdsh','2019-01-03 15:19:00'
);
    end loop;
end;
/

--step5: 空字符与字符串拼接   expect: 成功
select concat_ws('','11') from t_ustore_concat_ws_0048 order by 1 limit 10;

--step6: concat_ws函数单个入参    expect: 合理报错
select concat_ws('-') from t_ustore_concat_ws_0048 order by 1 limit 10;
select concat_ws() from t_ustore_concat_ws_0048 order by 1 limit 10;
select concat_ws(null) from t_ustore_concat_ws_0048 order by 1 limit 10;

--step7: 清理环境   expect: 清理成功
drop sequence if exists s_seq_get_tab_sin;
drop table if exists t_ustore_concat_ws_0048 cascade;
